package com.huluobo.base.net

import com.huluobo.base.bean.Res
import com.huluobo.base.bean.SignBean
import okhttp3.RequestBody
import retrofit2.http.Body
import retrofit2.http.POST

/**
 *  Created by LC on 2024/7/24.
 */
interface ApiService {
    @POST(Const.URL_SIGN_IN)
    suspend fun signIn(@Body body: RequestBody): Res<SignBean>

    @POST(Const.URL_SIGN_OUT)
    suspend fun signOut(@Body body: RequestBody): Res<SignBean>

    @POST(Const.URL_NEWS)
    suspend fun getNews(@Body body: RequestBody): Res<String>

    @POST(Const.URL_ADD_NEWS)
    suspend fun addNews(@Body body: RequestBody): Res<String>

    @POST(Const.URL_GET_REPAIR_LIST)
    suspend fun getRepairList(): Res<String>

    @POST(Const.URL_ALL_VISITOR_LIST)
    suspend fun getAllVisitor(@Body body: RequestBody): Res<String>

    @POST(Const.URL_ADD_VISITOR)
    suspend fun addVisitor(@Body body: RequestBody): Res<String>

    @POST(Const.URL_DELETE_VISITOR)
    suspend fun deleteVisitor(@Body body: RequestBody): Res<String>

    @POST(Const.URL_REPAIR_COMPLETE)
    suspend fun repairComplete(@Body body: RequestBody): Res<String>

    @POST(Const.URL_ALL_PATROL)
    suspend fun getAllPatrols(): Res<String>

    @POST(Const.URL_GET_ALL_POINT)
    suspend fun getAllPoint(): Res<String>

    @POST(Const.URL_ADD_POINT)
    suspend fun addPoint(@Body body: RequestBody): Res<String>

    @POST(Const.URL_ADD_PATROL)
    suspend fun addPatrol(@Body body: RequestBody): Res<String>

    @POST(Const.URL_GET_ALL_SIGN)
    suspend fun getAllSign(@Body body: RequestBody): Res<String>

    @POST(Const.URL_ADD_NOTICE)
    suspend fun addNotice(@Body body: RequestBody): Res<String>

    @POST(Const.URL_QUERY_NOTICE)
    suspend fun queryNotice(@Body body: RequestBody): Res<String>

    @POST(Const.URL_GET_ALL_DEPARTMENT)
    suspend fun getAllDepartment(@Body body: RequestBody): Res<String>

    @POST(Const.URL_GET_DEPARTMENT_USER)
    suspend fun getDepartmentUser(): Res<String>

    @POST(Const.URL_GET_UN_DEPARTMENT_USER)
    suspend fun getUnDepartmentUser(): Res<String>

    @POST(Const.URL_ADD_DEPARTMENT)
    suspend fun addDepartment(@Body body: RequestBody): Res<String>

    @POST(Const.URL_ADD_REPAIR)
    suspend fun addRepair(@Body body: RequestBody): Res<String>
}